package com.heatup.apt.model.order;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.springframework.format.annotation.DateTimeFormat;

/**
 * 预售年卡订单实体类
 *
 * @author timo
 */
public class PresaleCardPayOrderApiModel implements Serializable {

    /**
     *
     */
    private static final long serialVersionUID = 1L;

    private Integer serviceId;// 服务ID
    private Integer monthCount;// 月份数量
    private BigDecimal accountAmount;// 账户金额
    private Integer mealCount;// 餐券数量
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date opendCardDate;// 开卡时间
    private Integer payType;// 支付类型
    private List<String> billImg;// 票据图片
    private List<String> contractImg;// 合同图片
    private String remark;// 备注
    private String orderType;// 订单类型
    private Integer opendOrderUserId;// 开单预售人员Id
    private BigDecimal payAmount;// 支付金额
    private Integer billType; // 开单类型 新增 续费  1 新增 2 续费
    private boolean teamVipRights; // 团课vip服务权益
    private boolean selfVipRights; // 自助健身服务权益

    public Integer getServiceId() {
        return serviceId;
    }

    public void setServiceId(Integer serviceId) {
        this.serviceId = serviceId;
    }

    public Integer getMonthCount() {
        if (monthCount == null) return 0;
        return monthCount;
    }

    public void setMonthCount(Integer monthCount) {
        this.monthCount = monthCount;
    }

    public BigDecimal getAccountAmount() {
        if (accountAmount == null) return BigDecimal.ZERO;
        return accountAmount;
    }

    public void setAccountAmount(BigDecimal accountAmount) {
        this.accountAmount = accountAmount;
    }

    public Integer getMealCount() {
        if (mealCount == null) return 0;
        return mealCount;
    }

    public void setMealCount(Integer mealCount) {
        this.mealCount = mealCount;
    }

    public Integer getPayType() {
        return payType;
    }

    public Date getOpendCardDate() {
        return opendCardDate;
    }

    public void setOpendCardDate(Date opendCardDate) {
        this.opendCardDate = opendCardDate;
    }

    public void setPayType(Integer payType) {
        this.payType = payType;
    }

    public List<String> getBillImg() {
        return billImg;
    }

    public void setBillImg(List<String> billImg) {
        this.billImg = billImg;
    }

    public List<String> getContractImg() {
        return contractImg;
    }

    public void setContractImg(List<String> contractImg) {
        this.contractImg = contractImg;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public Integer getOpendOrderUserId() {
        return opendOrderUserId;
    }

    public void setOpendOrderUserId(Integer opendOrderUserId) {
        this.opendOrderUserId = opendOrderUserId;
    }

    public BigDecimal getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }

    public Integer getBillType() {
        return billType;
    }

    public void setBillType(Integer billType) {
        this.billType = billType;
    }

    public boolean isTeamVipRights() {
        return teamVipRights;
    }

    public void setTeamVipRights(boolean teamVipRights) {
        this.teamVipRights = teamVipRights;
    }

    public boolean isSelfVipRights() {
        return selfVipRights;
    }

    public void setSelfVipRights(boolean selfVipRights) {
        this.selfVipRights = selfVipRights;
    }
}
